1. Field of the Invention
The invention relates generally to providing remote printing services to a client device.
2. Discussion of Related Art
In a printing environment, various print options exist when printing a document on a printing device. For example, a user may desire to print a document with duplex printing, stapling, sorting, etc., for a document to be printed. After the user selects the various print job options, a print job is generated for the document to be printed. The generated print job is subsequently submitted to a printing device for printing on some form of printable media.
Typically, the available print options for a specific printing device are established when a printing device is installed on a client device (i.e., a print driver of the printing device is installed with a print capabilities file on the client device). For example, when a print driver is installed on a computer, various print options for the printing device may be specified by a user, such as what paper trays are available, the size of the paper in each tray, the amount of memory within the printing device, etc. The print capabilities file allows the client device to consistently identify the print capabilities of a specific printing device. When a print job for the printing device is generated using the print driver and the print capabilities file, the various print options for the print job are converted into device specific commands for the printing device. The device specific commands are generally unique to a particular vender or model of the printing device. Various web print services, however, exist which allow client devices to transfer the process of print job generation to a server operating the web print services. Such services may be utilized, for example, when the client device either lacks the rendering capability for the print job or is simply too limited in performance for rendering the print job on the client device in a reasonable amount of time. In such cases, the server executing a web print service renders the print job for the client. In doing so, the client device connects to the server on one data network (often referred to as a “cloud”) and sends a document to the server, specifying the printer model to be used. The server may then generate a Page Descriptor Language PDL rendition of the document and send to the rendered document to a printer in another data network for printing. However, such printing services are generally not available to the printing of webpages being viewed on certain client devices. For example, a mobile client device may view a webpage within a certain data network configured with a variety of printers. Since that mobile client device is not likely to be configured with print drivers for the printers in that data network, the mobile client device is not able to print to any of those local printers.